package com.gzx.plugin.tjzy.modular.debtor.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fhs.core.trans.anno.Trans;
import com.fhs.core.trans.constant.TransType;
import com.fhs.core.trans.vo.TransPojo;
import lombok.Data;
import lombok.EqualsAndHashCode;
import vip.xiaonuo.common.handler.CommonSm1AesTypeHandler;
import vip.xiaonuo.common.pojo.TenantEntity;

import java.math.BigDecimal;

/**
 * 欠款人信息对象 gzx_debtor_info
 *
 * @author LionLi
 * @date 2024-09-18
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName(value = "gzx_debtor_info", autoResultMap = true)
public class GzxDebtorInfo extends TenantEntity implements TransPojo {

    /**
     * 自增主键
     */
    @TableId(value = "id")
    private Long id;

    private String projectCode;

    /**
     * 欠款人姓名
     */
    private String debtorName;

    /**
     * 欠款人性别1男2女
     */
    @Trans(type = TransType.DICTIONARY, key = "Sex", ref = "debtorSexName")
    private Integer debtorSex;

    @TableField(exist = false)
    private String debtorSexName;

    /**
     * 欠款人联系电话
     */
    @TableField(typeHandler = CommonSm1AesTypeHandler.class)
    private String debtorPhone;

    /**
     * 欠款人身份证号
     */
    @TableField(typeHandler = CommonSm1AesTypeHandler.class)
    private String debtorCardId;

    /**
     * 欠款人身份证号
     */
    @TableField(typeHandler = CommonSm1AesTypeHandler.class)
    private String realDebtorCardId;

    /**
     * 欠款人出生年月日
     */
    private String debtorBirth;

    /**
     * 欠款人年龄
     */
    private Integer debtorAge;

    /**
     * 欠款人身份证号所在省
     */
    private String debtorProvince;

    /**
     * 身份证号所在市
     */
    private String debtorCity;

    /**
     * 户籍地址
     */
    @TableField(typeHandler = CommonSm1AesTypeHandler.class)
    private String debtorAddress;
    /**
     * 预留地址
     */
    @TableField(typeHandler = CommonSm1AesTypeHandler.class)
    private String debtorNowAddress;
    /**
     * 账户余额
     */
    private BigDecimal debtorAccountBalance;

}
